﻿using System;
using System.Collections.Generic;

namespace DongFangGuoKai.WMSPlatform.Domain.Models
{
    /// <summary>
    /// 出库单明细
    /// </summary>
    public partial class TShippingOrderDetail
    {
        /// <summary>
        /// 主键
        /// </summary>
        public int Id { get; set; }

        /// <summary>
        /// 委托单号
        /// </summary>
        public string OrderSn { get; set; }

        /// <summary>
        /// 出库单号
        /// </summary>
        public string OutBoundNo { get; set; }

        public int? BillType { get; set; }
        /// <summary>
        /// 优先级:默认为0
        /// </summary>
        public int? Proirity { get; set; }
        /// <summary>
        /// 状态：0-新建;1-已启动;2-作业中;3-已完成;4-强制完成;5-暂停;6-失效；7-异常
        /// </summary>
        public int Status { get; set; }
        /// <summary>
        /// 库房编码
        /// </summary>
        public string? WarehouseCode { get; set; }
        /// <summary>
        /// 库房名称
        /// </summary>
        public string? WarehouseName { get; set; }
        /// <summary>
        /// 库区编码
        /// </summary>
        public string? AreaCode { get; set; }
        /// <summary>
        /// 库区名称
        /// </summary>
        public string? AreaName { get; set; }
        /// <summary>
        /// 物料ID
        /// </summary>
        public long MaterialId { get; set; }
        /// <summary>
        /// 物料号，对应公共数据库中的物料主数据表,指定仓位出库的时候物料号允许为空
        /// </summary>
        public string? MaterialCode { get; set; }
        /// <summary>
        /// 物料名称
        /// </summary>
        public string? MaterialName { get; set; }
        public string? MaterialTypeCode { get; set; }
        /// <summary>
        /// 批次号
        /// </summary>
        public string? BatchNo { get; set; }
        public int? QualityState { get; set; }
        /// <summary>
        /// 计量单位编号
        /// </summary>
        public int? UnitId { get; set; }
        /// <summary>
        /// 计量单位名称
        /// </summary>
        public string? UnitName { get; set; }
        /// <summary>
        /// 预期出货数量
        /// </summary>
        public decimal? Qty { get; set; }
        /// <summary>
        /// 出库站台Id
        /// </summary>
        public int? StationId { get; set; }
        /// <summary>
        /// 预期出库站台或站台组
        /// </summary>
        public string? StationName { get; set; }
        public string? Erpcode { get; set; }
        /// <summary>
        /// 包装数量
        /// </summary>
        public int? PackQty { get; set; }
        /// <summary>
        /// 已经下架的数量
        /// </summary>
        public decimal? PickedQty { get; set; }
        /// <summary>
        /// 已经出库完成的数量
        /// </summary>
        public decimal? ShippedQty { get; set; }
        /// <summary>
        /// 订单完成日期
        /// </summary>
        public DateTime? FinshDate { get; set; }
        /// <summary>
        /// 单据来源类型：0-手动建单；1-ERP;2-MES;3-SAP
        /// </summary>
        public int? SourceType { get; set; }
        /// <summary>
        /// 创建用户Id
        /// </summary>
        public int? CreateUserId { get; set; }
        /// <summary>
        /// 创建用户名
        /// </summary>
        public string? CreateUserName { get; set; }
        /// <summary>
        /// 创建日期
        /// </summary>
        public DateTime? CreateDate { get; set; }
        /// <summary>
        /// 修改用户ID
        /// </summary>
        public int? ModifyUserId { get; set; }
        /// <summary>
        /// 修改用户
        /// </summary>
        public string? ModifyUserName { get; set; }
        /// <summary>
        /// 修改日期
        /// </summary>
        public DateTime? ModifyDate { get; set; }
        /// <summary>
        /// 提交人Id
        /// </summary>
        public int? SubmitUserId { get; set; }
        /// <summary>
        /// 提交人
        /// </summary>
        public string? SubmitUserName { get; set; }
        /// <summary>
        /// 提交时间
        /// </summary>
        public DateTime? SubmitDate { get; set; }
        /// <summary>
        /// 审核人Id
        /// </summary>
        public int? AuditUserId { get; set; }
        /// <summary>
        /// 审核人
        /// </summary>
        public string? AuditUserName { get; set; }
        /// <summary>
        /// 审核时间
        /// </summary>
        public DateTime? AuditDate { get; set; }
        /// <summary>
        /// 物料凭证号
        /// </summary>
        public string? Mblnr { get; set; }
        /// <summary>
        /// 物料凭证年度
        /// </summary>
        public string? Mjahr { get; set; }
        /// <summary>
        /// 物料凭证行项目
        /// </summary>
        public string? Zeile { get; set; }
        /// <summary>
        /// 采购订单号
        /// </summary>
        public string? PurOrderNo { get; set; }
        /// <summary>
        /// 采购订单行号
        /// </summary>
        public string? PurOrderLineNo { get; set; }
        /// <summary>
        /// 采购订单行项目类型：0-无；1-L外协；2-U转储;3-正常采购
        /// </summary>
        public int? PurOrderLineType { get; set; }
        /// <summary>
        /// 生产订单号
        /// </summary>
        public string? ProOrderNo { get; set; }
        /// <summary>
        /// 部门编码
        /// </summary>
        public string? DeptCode { get; set; }
        /// <summary>
        /// 部门名称
        /// </summary>
        public string? DeptName { get; set; }
        /// <summary>
        /// 货主Id
        /// </summary>
        public int? OwnerId { get; set; }
        /// <summary>
        /// 货主
        /// </summary>
        public string? OwnerName { get; set; }
        /// <summary>
        /// 发货单号
        /// </summary>
        public string? DisOrderNo { get; set; }
        /// <summary>
        /// 发货单行号
        /// </summary>
        public string? DisOrderLineNo { get; set; }
        public int? RefOutVoucherId { get; set; }
        public int? RefDispatchOrderId { get; set; }
        public string? ContractNo { get; set; }
        public bool? IsMultPallet { get; set; }
        public bool? IsSuspend { get; set; }
        public int? WarehouseId { get; set; }
        public bool? IsOutOrderReview { get; set; }
        public bool? IsOnceOut { get; set; }
        public Guid? OnceOutGroupGuid { get; set; }
        public string? ProduceFactory { get; set; }
        public string? SupplierName { get; set; }
        public int? SupplierId { get; set; }
    }
}
